package com.alibaba.otter.node.etl.load.loader.mq.rabbit.strategy;

import com.alibaba.fastjson.JSONObject;
import org.apache.commons.lang3.StringUtils;
//
//@Slf4j
//public class NotifyViaWechat implements NotifyStrategy {
//
//    private String user;
//    private long lastNotifyTime = 0L;
//    private long notifyIntervalInMinutes = 15;
//    private long notifyInterval = notifyIntervalInMinutes * 60 * 1000;
//
//    NotifyViaWechat(String user) {
//        this.user = user;
//    }
//
//    @Override
//    public void notifyUser(MqConsumeException ex) {
//        if ((System.currentTimeMillis() - lastNotifyTime) < notifyInterval) {
//            log.debug("距上次报警的间隔小于" + notifyIntervalInMinutes + "分钟，跳过本次报警。");
//            return;
//        }
//        String message = "Failed to consume RabbitMQ message. "
//            + "\nException: " + ex.getMessage()
//            + "\nQueue: " + ex.getMsgCtx().getQueue()
//            + "\nConsumer Host: " + IpUtil.getIp();
//        if (StringUtils.isEmpty(user)) {
//            log.error("users : {} is empty", user);
//            return;
//        }
//        String token = getToken();
//        if (StringUtils.isEmpty(token)) {
//            log.error("workWechat token is empty");
//            return;
//        }
//
//        JSONObject params = new JSONObject();
//        JSONObject text = new JSONObject();
//        text.put("content", message);
//
//        params.put("msgtype", "text");
//        params.put("agentid", "9");
//        params.put("safe", "0");
//        params.put("touser", user);
//        params.put("text", text);
//
//        String result = HttpClientUtil.sendHttpPost(sendUrl + token, params.toJSONString());
//        log.info("workWechat result :{} parameter:{}", result, params.toJSONString());
//    }
//
//    private static String sendUrl = "https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=";
//    private static String getTokenUrl = "https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=wx00ec802f42606bb1&corpsecret=04zkSPCisPiHEOOdUt1nFyX5akAD81r4Slf20oocLDMms11H5EpoGNUYWEQAtEX1";
//
//    private String getToken() {
//        JSONObject result = JSONObject.parseObject(HttpClientUtil.sendHttpGet(getTokenUrl));
//        return result != null ? result.getString("access_token") : StringUtils.EMPTY;
//    }
//}
